home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / prolog / modprolg / mod-prol.lha / Prolog / Examples / slide3.mod < prev    next >
Text File  |  1992-06-09  |  548b  |  20 lines

  1.     structure stack1 =
  2.         struct
  3.             fun item/2 and empty/0.
  4.             newstack(empty).
  5.             pop(item(X,Stack),Stack,X).
  6.             push(Stack,X,item(X,Stack)).
  7.             isempty(empty).
  8.         end.
  9.  
  10.     structure uses_stacks =
  11.         struct
  12.             structure stack = stack1.
  13.             fun newitem/2 = stack1:item.
  14.             stack_non_empty(newitem(_,_)).
  15.             test :-
  16.                 stack:newstack(New),
  17.                 stack:push(New,1,Nonempty),
  18.                 stack_non_empty(Nonempty).
  19.         end.
  20.